Colin Walters [Thu, 9 Jun 2022 22:34:25 +0000 (18:34 -0400)]
repo: Document non-obvious way to list all commits
I was going to add an API for this and then realized the empty
string does it.
Joseph Marrero Corchado [Thu, 9 Jun 2022 20:53:52 +0000 (16:53 -0400)]
Merge pull request #2641 from cgwalters/bump-ostree-rs-ext-0.7
tests/inst: Bump the version of ostree-ext
Joseph Marrero Corchado [Thu, 9 Jun 2022 20:53:00 +0000 (16:53 -0400)]
Merge pull request #2642 from cgwalters/rust-bindings-cargo-updates
Rust bindings cargo updates
Colin Walters [Thu, 9 Jun 2022 18:59:44 +0000 (14:59 -0400)]
rust-bindings: Update cargo package list
When we did the merger, it turns out cargo by default is basically
going to include all of stuff in the git repository root directory
which is "libostree". We just want the stuff in `rust-bindings/`.
I initially tried adding `include = "rust-bindings/"` but
according to
https://doc.rust-lang.org/cargo/reference/manifest.html#the-exclude-and-include-fields
specifying `include` means that `exclude` is
ignored, which is kind of annoying. Further, doing so *also*
turns off the cargo automatic rules for handling e.g. `gitignore`.
So for now I went with the approach of adding everything from the C
library stuff into `exclude/`.
Colin Walters [Thu, 9 Jun 2022 18:55:25 +0000 (14:55 -0400)]
rust-bindings: use correct README.md
I noticed at https://crates.io/crates/ostree/0.14.0
that the `README.md` was wrong...
Colin Walters [Thu, 9 Jun 2022 18:53:06 +0000 (14:53 -0400)]
rust-bindings: Fix repository reference
Since the repo merge.
Colin Walters [Thu, 9 Jun 2022 18:51:45 +0000 (14:51 -0400)]
tests/inst: Bump the version of ostree-ext
In the interest of cross-testing and keeping things up to date.
Hmm, I think we need to set up dependabot here.
Joseph Marrero Corchado [Wed, 8 Jun 2022 21:17:28 +0000 (17:17 -0400)]
Merge pull request #2638 from cgwalters/fix-symbol-versioning
lib: Fix symbol versioning inheritance
Joseph Marrero Corchado [Wed, 8 Jun 2022 20:53:29 +0000 (16:53 -0400)]
Merge pull request #2637 from cgwalters/opt-prune-reachable-too
prune: Also use object set API in `ostree_repo_prune_from_reachable()`
Colin Walters [Wed, 8 Jun 2022 20:27:30 +0000 (16:27 -0400)]
lib: Fix symbol versioning inheritance
I messed this up; the last release should inherit from the previous
release (N-1) and not the previous to that (N-2).
I think (hope) this isn't an ABI break...
Just noticed this when I was going to add a new symbol.
Colin Walters [Wed, 8 Jun 2022 20:22:26 +0000 (16:22 -0400)]
prune: Also use object set API in `ostree_repo_prune_from_reachable()`
I missed the second prune path when working on
https://github.com/ostreedev/ostree/pull/2635
Colin Walters [Wed, 8 Jun 2022 17:16:11 +0000 (13:16 -0400)]
Merge pull request #2636 from cgwalters/update-git-libostree-git-rust
ci: Add a flow that does a git libostree + git rust-bindings
Jonathan Lebon [Wed, 8 Jun 2022 15:38:36 +0000 (11:38 -0400)]
Merge pull request #2635 from cgwalters/list-objects-set
Colin Walters [Wed, 8 Jun 2022 13:53:33 +0000 (09:53 -0400)]
ci: Add a flow that does a git libostree + git rust-bindings
In https://github.com/ostreedev/ostree/pull/2633 I realized
that our CI only builds git of libostree or git of rust-bindings,
not git of both. And we definitely want to test the latter too,
so e.g. the Rust tests *also* become tests for changes to the C code.
Colin Walters [Wed, 8 Jun 2022 01:41:08 +0000 (21:41 -0400)]
repo: Further optimize `ostree_repo_list_objects_set()`
In a prior change we discovered that for bad historical reasons
libostree was returning a mapping "object type+checksum" => "metadata"
but the "metadata" was redundant and pointless.
Optimize the prune API to use a (currently internal) object listing
API which returns a set, not a map. This allows `GHashTable` to
avoid allocating a separate array for the values, neatly cutting
memory usage in half (from ~13MB to ~6MB) on my test case of a
dry-run prune of a FCOS build.
Joseph Marrero Corchado [Wed, 8 Jun 2022 14:15:02 +0000 (10:15 -0400)]
Merge pull request #2633 from cgwalters/bump-rust-bindings
rust: Bump semver, add feature for current release
Colin Walters [Tue, 7 Jun 2022 21:59:02 +0000 (17:59 -0400)]
rust: Bump semver, add feature for current release
There were some changes to the sys API for introspection fixes.
And add a feature for the current release, which is something
I'll add to the checklist for releases.
Dan Nicholson [Wed, 8 Jun 2022 02:59:45 +0000 (20:59 -0600)]
Merge pull request #2634 from cgwalters/list-objects-malloc
repo: Optimize memory use of `ostree_repo_list_objects()`
Colin Walters [Wed, 8 Jun 2022 00:30:09 +0000 (20:30 -0400)]
repo: Optimize memory use of `ostree_repo_list_objects()`
I was looking at https://github.com/ostreedev/ostree/pull/2632
and confused at the usage of
`GVariant *value = g_variant_new ("(b@as)", TRUE, g_variant_new_strv (NULL, 0));`
which looked strange - why the empty strv?
It turns out that this is a historical legacy of the time when
ostree had pack files. And nothing actually cares about the values
of these variants; we should have an API that returns a proper set,
and not a hash.
But...since all of these things have exactly the same value, instead
of allocating lots of redundant copies on the heap, just have
them all hold a refcount on a shared value.
This cuts the heap usage from 20MB to 13MB on a test FCOS repository
build.
Joseph Marrero Corchado [Mon, 6 Jun 2022 16:49:42 +0000 (12:49 -0400)]
Merge pull request #2631 from cgwalters/release-2022-4
Release 2022.4
Colin Walters [Mon, 6 Jun 2022 15:06:44 +0000 (11:06 -0400)]
configure: post-release version bump
Colin Walters [Mon, 6 Jun 2022 15:04:44 +0000 (11:04 -0400)]
Release 2022.4
Jonathan Lebon [Fri, 3 Jun 2022 14:52:44 +0000 (10:52 -0400)]
Merge pull request #2627 from cgwalters/bindings-drop-committed-gir
Colin Walters [Fri, 3 Jun 2022 13:58:20 +0000 (09:58 -0400)]
rust-bindings: Update to latest git
Colin Walters [Fri, 3 Jun 2022 13:57:12 +0000 (09:57 -0400)]
rust-bindings: Use OSTree-1.0.gir from our own builddir
Now that the projects are unified.
Colin Walters [Fri, 3 Jun 2022 13:48:47 +0000 (09:48 -0400)]
rust-bindings: Delete committed gir files
These seem to have been accidentally committed to git; they should
not be here. The Gir should be derived from source code.
Joseph Marrero Corchado [Fri, 3 Jun 2022 13:22:48 +0000 (09:22 -0400)]
Merge pull request #2625 from cgwalters/drop-features-introspection
Drop `OSTREE_BUILT_FEATURES` from introspection
Joseph Marrero Corchado [Fri, 3 Jun 2022 13:10:27 +0000 (09:10 -0400)]
Merge pull request #2624 from cgwalters/misc-introspection-fixes
Rename ostree-cmdprivate to drop out of introspection
Colin Walters [Thu, 2 Jun 2022 23:42:52 +0000 (19:42 -0400)]
Drop `OSTREE_BUILT_FEATURES` from introspection
It inherently depends on the individual build, and can't
really be an official stable API for introspection users.
I've noticed the value of this flip flop when doing local builds.
I'm fairly certain no one is trying to use it from a higher level
language.
It'd probably make sense to even drop from the official C API,
but I'm trying to be conservative with that.
Colin Walters [Thu, 2 Jun 2022 21:13:17 +0000 (17:13 -0400)]
Rename ostree-cmdprivate to drop out of introspection
I was looking at our `.gir` and noticed we had the cmdprivate bits
because the pattern for excluding headers is `-private.h`, which
didn't match `cmdprivate.h`.
Luca Bruno [Thu, 2 Jun 2022 15:38:46 +0000 (15:38 +0000)]
Merge pull request #2620 from jameswestman/lookup-annotations
Fix annotations on ostree_mutable_tree_lookup()
Jonathan Lebon [Tue, 31 May 2022 19:14:50 +0000 (15:14 -0400)]
Merge pull request #2622 from cgwalters/more-ci
Colin Walters [Tue, 31 May 2022 14:58:26 +0000 (10:58 -0400)]
gitignore: Add ci-build/
Generated by our scripts.
Colin Walters [Tue, 31 May 2022 14:57:00 +0000 (10:57 -0400)]
ci: Add a codestyle.sh
This matches what we do in rpm-ostree. Move the `glnx_fd_close`
bits out of `make syntax-check` in preparation for dropping that.
Colin Walters [Tue, 31 May 2022 14:49:09 +0000 (10:49 -0400)]
ci: Drop an unused files
Cruft from previous CI flows.
Jonathan Lebon [Tue, 31 May 2022 15:24:33 +0000 (11:24 -0400)]
Merge pull request #2621 from cgwalters/drop-jenkins-soup
Colin Walters [Tue, 31 May 2022 13:59:02 +0000 (09:59 -0400)]
ci: Drop libsoup build in jenkins
GH actions is fast zero cost system that covers these build matrix
things well. Let's keep our Fedora CI system doing more of the
qemu heavy lifting.
James Westman [Mon, 30 May 2022 22:28:54 +0000 (17:28 -0500)]
Fix annotations on ostree_mutable_tree_lookup()
(nullable) and (optional) were missing on lookup()'s out parameters,
which caused the rust bindings for the function to not work. Due to the
missing (nullable), it would return a Result<(GString, MutableTree), _>,
not a Result<(Option<GString>, Option<MutableTree>), _>, which led to
panics.
Luca Bruno [Mon, 30 May 2022 17:35:05 +0000 (17:35 +0000)]
Merge pull request #2613 from GuiltyDoggy/man-update
man: Fix ostree-admin-instutil subcommands
Jonathan Lebon [Fri, 27 May 2022 20:27:08 +0000 (16:27 -0400)]
Merge pull request #2619 from nikita-dubrovskii/skip_gzip_unpacking
Nikita Dubrovskii [Fri, 27 May 2022 07:13:18 +0000 (09:13 +0200)]
s390x: do not unpack existing initrd, just append LUKS keys to its copy
Signed-off-by: Nikita Dubrovskii <nikita@linux.ibm.com>
Luca Bruno [Fri, 27 May 2022 06:37:54 +0000 (06:37 +0000)]
Merge pull request #2618 from jlebon/pr/copr-fix
copr: mark git checkout as safe
Jonathan Lebon [Thu, 26 May 2022 20:54:43 +0000 (16:54 -0400)]
copr: mark git checkout as safe
Recent git became more strict wrt git repos in parent dirs owned by
other users. This broke our COPR builds due to the git checkout being
created by a different user and mounted in. We need to explicitly mark
the repo as safe.
For more information, see:
https://github.com/actions/checkout/issues/760
Jonathan Lebon [Wed, 25 May 2022 17:38:23 +0000 (13:38 -0400)]
Merge pull request #2615 from nikita-dubrovskii/handle_errors
Colin Walters [Wed, 25 May 2022 15:33:10 +0000 (11:33 -0400)]
Merge pull request #2605 from saqibali-2k/pr/bls-append
ostree-systroot-deploy: parse bls-append-except-default key
Nikita Dubrovskii [Tue, 24 May 2022 17:30:35 +0000 (19:30 +0200)]
s390x: fail on error during reading of SecureExecution sysfs flag
Luca Bruno [Wed, 25 May 2022 07:00:12 +0000 (07:00 +0000)]
Merge pull request #2616 from HuijingHei/dup-osname
Remove dup "--os=OSNAME" line in output of "ostree admin config-diff --help"
Huijing Hei [Wed, 25 May 2022 03:15:39 +0000 (11:15 +0800)]
Remove dup "--os=OSNAME" line in output of "ostree admin config-diff --help"
Small fix for https://github.com/ostreedev/ostree/issues/2594
Huijing Hei [Wed, 25 May 2022 03:12:47 +0000 (11:12 +0800)]
Fix GNU style of two spaces for indent in https://github.com/ostreedev/ostree/pull/2612
Colin Walters [Tue, 24 May 2022 15:18:54 +0000 (11:18 -0400)]
Merge pull request #2612 from HuijingHei/deploy-karg-delete
Teach --karg-delete option to ostree admin deploy
Dusty Mabe [Mon, 23 May 2022 20:11:56 +0000 (16:11 -0400)]
Merge pull request #2614 from nikita-dubrovskii/issue-2867
s390x: ensure SecureExecution is enabled before sd-boot generation
Nikita Dubrovskii [Mon, 23 May 2022 15:28:54 +0000 (17:28 +0200)]
s390x: ensure SecureExecution is enabled before sd-boot generation
Signed-off-by: Nikita Dubrovskii <nikita@linux.ibm.com>
Colin Walters [Mon, 23 May 2022 12:41:35 +0000 (08:41 -0400)]
Merge pull request #2580 from nikita-dubrovskii/sdboot_partition
s390x: generate sd-boot at its own partition
Yosuke Matsumura [Thu, 19 May 2022 20:54:26 +0000 (15:54 -0500)]
man: Fix ostree-admin-instutil subcommands
<term><cmdsynopsis> is not valid, causing the command to not be rendered
correctly.
Create one <variablelist> per <cmdsynopsis>. Inelegant but maintains
desired formatting.
Closes #2581
Huijing Hei [Wed, 18 May 2022 02:45:46 +0000 (10:45 +0800)]
Teach --karg-delete option to ostree admin deploy
See https://github.com/ostreedev/ostree/issues/2586
Saqib Ali [Wed, 11 May 2022 14:54:42 +0000 (10:54 -0400)]
man/ostree.repo-config.xml: add docs for bls-append-except-default key
Relevant: https://github.com/coreos/fedora-coreos-tracker/issues/134
Saqib Ali [Mon, 9 May 2022 16:39:32 +0000 (12:39 -0400)]
ostree-systroot-deploy: parse bls-append-except-default key
We want to parse a new "bls-append-except-default" key from ostree config. The
key-value pairs specified by this key will be added to the generated
BLS fragments of non-default deployments. They must follow the format
"key1,value1;key2,value2" and so on.
This change will allow us to land GRUB password support in FCOS.
Relevant: https://github.com/coreos/fedora-coreos-tracker/issues/134
Nikita Dubrovskii [Mon, 4 Apr 2022 14:09:50 +0000 (16:09 +0200)]
s390x: generate sd-boot at its own partition
Signed-off-by: Nikita Dubrovskii <nikita@linux.ibm.com>
Joseph Marrero Corchado [Tue, 17 May 2022 14:43:30 +0000 (10:43 -0400)]
Merge pull request #2610 from cgwalters/ci-tweaks-2
ci: Move codestyle and min build to GH actions
Colin Walters [Tue, 17 May 2022 00:10:32 +0000 (20:10 -0400)]
ci: Move codestyle and min build to GH actions
Part of general momentum to leave heavy lifting (e.g. VM tests)
to Jenkins and Prow and use the cheaper/faster GH actions for
plain builds.
Colin Walters [Mon, 16 May 2022 19:55:35 +0000 (15:55 -0400)]
Merge pull request #2608 from cgwalters/fanalyzer-fixes
ci: Drop gcc `-fanalyzer` by default
Colin Walters [Mon, 16 May 2022 16:37:15 +0000 (12:37 -0400)]
ci: Drop all `runAsUser: 0` in builds
This triggers the new git warning; I think this is only
here because long ago we used coreos-assembler as a buildroot,
but that's long since fixed.
Colin Walters [Sun, 15 May 2022 20:03:38 +0000 (16:03 -0400)]
ci: Drop gcc `-fanalyzer` by default
There's a pile of new warnings in GCC 12 from F36, I dug into
them but most of them seem inscrutable - I am not seeing the bugs.
For now to unblock further work, stop using this flag.
Colin Walters [Mon, 16 May 2022 14:59:27 +0000 (10:59 -0400)]
sysroot: Strengthen several `g_return_if_fail` into `g_assert()`
Similar to prior changes; motivated by testing out an updated
`gcc -fanalyzer`.
Colin Walters [Sun, 15 May 2022 20:03:01 +0000 (16:03 -0400)]
sysroot: Quiet one gcc `-fanalyzer` warning
I don't think this can happen in practice, but add an assertion
to verify it.
Luca Bruno [Thu, 12 May 2022 13:18:45 +0000 (13:18 +0000)]
Merge pull request #2606 from ostreedev/dependabot/submodules/libglnx-
c59eb27
build(deps): bump libglnx from `
c71f7ae` to `
c59eb27`
dependabot[bot] [Thu, 12 May 2022 12:32:06 +0000 (12:32 +0000)]
build(deps): bump libglnx from `
c71f7ae` to `
c59eb27`
Bumps libglnx from `
c71f7ae` to `
c59eb27`.
---
updated-dependencies:
- dependency-name: libglnx
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Joseph Marrero Corchado [Tue, 10 May 2022 21:43:19 +0000 (17:43 -0400)]
Merge pull request #2603 from cgwalters/use-cargo-deny
ci: use cargo-deny
Colin Walters [Tue, 10 May 2022 21:13:44 +0000 (17:13 -0400)]
ci: use cargo-deny
Copied from https://github.com/ostreedev/ostree-rs-ext/pull/291
Part of unifying our CI.
Colin Walters [Mon, 9 May 2022 20:41:08 +0000 (16:41 -0400)]
Merge pull request #2575 from cgwalters/merge-ostree-rs
Merge ostree-rs into this repository
Colin Walters [Mon, 9 May 2022 19:00:53 +0000 (15:00 -0400)]
Merge pull request #2601 from cgwalters/expose-get-xattrs
Add APIs to get xattrs from disk
Colin Walters [Mon, 9 May 2022 19:00:00 +0000 (15:00 -0400)]
Merge pull request #2602 from cgwalters/fix-docs-ci
ci: Work around GH actions `container:` + git + security bug
Colin Walters [Mon, 9 May 2022 18:53:40 +0000 (14:53 -0400)]
rust-bindings: Remove some unused CI/test bits
We're not using Vagrant or Gitlab, and our container flow is
different.
Colin Walters [Mon, 9 May 2022 18:52:46 +0000 (14:52 -0400)]
ci: Move rust-bindings CI to toplevel
It should replace our stub one.
Colin Walters [Mon, 9 May 2022 18:52:26 +0000 (14:52 -0400)]
tests/inst: Add .gitignore
Need this now that it is it's own workspace.
Colin Walters [Mon, 9 May 2022 18:46:41 +0000 (14:46 -0400)]
ci: Work around GH actions `container:` + git + security bug
See https://github.com/actions/checkout/issues/760
Colin Walters [Mon, 9 May 2022 16:57:40 +0000 (12:57 -0400)]
tests/inst: Fix install rules for ostree-rs merger
`tests/inst` became its own workspace.
Colin Walters [Sat, 7 May 2022 17:51:31 +0000 (13:51 -0400)]
Add APIs to get xattrs from disk
I'm aiming to do some more work on the Rust side around `fsck`
like functionality, and this is a useful primitive. There isn't
a great Rust crate for xattrs, and I think it's better to share this
code.
Colin Walters [Fri, 6 May 2022 20:46:46 +0000 (16:46 -0400)]
cfg.mk: Don't even look at rust-bindings/
It's really tempting to remove `make syntax-check`, it has very
very rarely found any real problems.
But anyways, just exclude all the binding code because it trips
up random problems we simply don't care about like mentions of
`O_NDELAY` in the `GLib-2.0.gir`.
Joseph Marrero Corchado [Fri, 6 May 2022 20:35:28 +0000 (16:35 -0400)]
Merge pull request #2600 from cgwalters/link-suse-ima
docs/ima: Also link the SUSE docs
Colin Walters [Fri, 6 May 2022 18:43:58 +0000 (14:43 -0400)]
docs/ima: Also link the SUSE docs
They have a lot of stuff there.
Colin Walters [Thu, 31 Mar 2022 22:53:31 +0000 (18:53 -0400)]
build-sys: Adjust for merge of ostree-rs
Fix up the paths for the crates now that the Rust bindings are in
`rust/`.
We can't today include the test suite because it depends on `ostree-rs-ext`
which would make everything circular.
(Building that now requires a separate `cd tests/inst && cargo build`)
Colin Walters [Tue, 26 Apr 2022 23:30:01 +0000 (19:30 -0400)]
Add a `repo()` accessor to `TransactionGuard`
I want to write APIs that *require* the caller to have set up
an ostree transaction. It's natural to require passing a guard
to do so. But then we want an accessor for the repo.
Colin Walters [Wed, 6 Apr 2022 13:49:58 +0000 (09:49 -0400)]
lib: Run `cargo fmt`
Prep for merge into ostree, where we want to run `cargo fmt` checks
in CI.
Luca BRUNO [Fri, 4 Mar 2022 14:28:36 +0000 (14:28 +0000)]
ostree: release 0.13.7
Luca BRUNO [Fri, 4 Mar 2022 14:28:35 +0000 (14:28 +0000)]
ostree: manually patch generated files
This manually adds a missing `ToGlibPtr` import, which seems to be result
of some bugs in `gir` code-generation.
Luca BRUNO [Fri, 4 Mar 2022 14:28:34 +0000 (14:28 +0000)]
ostree: refresh after gir bump
Luca BRUNO [Fri, 4 Mar 2022 14:28:33 +0000 (14:28 +0000)]
ostree/cargo: bump to ostree-sys 0.9.2
Luca BRUNO [Fri, 4 Mar 2022 10:35:03 +0000 (10:35 +0000)]
ostree-sys: release 0.9.2
Luca BRUNO [Fri, 4 Mar 2022 10:35:02 +0000 (10:35 +0000)]
ostree-sys: refresh after gir bump
Luca BRUNO [Fri, 4 Mar 2022 10:35:01 +0000 (10:35 +0000)]
gir-files: bump to v2022.2
Colin Walters [Sat, 26 Feb 2022 13:46:50 +0000 (08:46 -0500)]
repo: Add `query_file` API
The underlying `ostree_repo_load_file()` API has the caller pass
`NULL` for output arguments it doesn't want. This isn't sanely
bindable in Rust - what the generator does is always request
all values, but maps them all to `Option<T>`.
The main cases are where a user wants either metadata, or both
metadata and content. This API gives just metadata; it's a
bit more efficient as we don't need to open the file, and doesn't
require the caller to `unwrap()`.
Colin Walters [Thu, 17 Feb 2022 23:36:43 +0000 (18:36 -0500)]
Add manual bindings for MutableTree reading
I'm trying to debug a problem in ostree-rs-ext, and it's
handy to be able to do `dbg!(mtree.copy_files())`.
Colin Walters [Thu, 10 Feb 2022 14:08:58 +0000 (09:08 -0500)]
Release 0.13.6
Colin Walters [Wed, 9 Feb 2022 23:41:31 +0000 (18:41 -0500)]
Fast-track fix for `ostree_gpg_verify_result_get_all()`
This cherry picks just the changes from
https://github.com/ostreedev/ostree/pull/2537
We don't need to wait to respin a new ostree release just
for this.
Colin Walters [Fri, 4 Feb 2022 00:59:09 +0000 (19:59 -0500)]
Release 0.13.5
Colin Walters [Thu, 3 Feb 2022 17:40:46 +0000 (12:40 -0500)]
Add `COMMIT_META_CONTAINER_CMD` constant
Today we hardcode `/bin/bash` in
https://github.com/coreos/coreos-assembler/blob/
2088d24884771093101d95f915c921505128ef76/src/cmd-build#L405
But that breaks the concept of a bidirectional bridge between
container image and ostree commit because this little bit of
knowledge is encoded at the buildsystem side.
This metadata key is intended to be written into an ostree commit,
and then we will use it automatically in `container encapsulate`.
The "source of truth" for this key will hence be able live in the same
place that's generating the ostree commit.
The more "proper" place for this is probably alongside the other
constants in the libostree core C code. But that's tedious and
slow to release. And Rust is the future. And we've been slowly
adding more "core ostree" functionality here.
Colin Walters [Thu, 3 Feb 2022 13:54:37 +0000 (08:54 -0500)]
repo: Add two more cap-std APIs
Followup to the previous PR. I realized now with `io_lifetimes`
we can offer a safe `dfd_borrow()` that *borrows* the file descriptor
for the repository. (In contrast to the current `.dfd()` that returns
the raw version)
Building on that, add another API that re-acquires a `Dir` instance.
(In the future in theory we could optimize this more by knowing
whether or not the repo was constructed via cap-std, and perhaps
in theory synthesize a `&Dir` reference, but I don't think we
need that now)
Colin Walters [Wed, 2 Feb 2022 22:47:52 +0000 (17:47 -0500)]
Add a `cap-std-apis` feature with open/create
I'm trying to make more use of `cap-std` in our stack, and
this will be a key enabling API.
Actually a notable side benefit of this is that we don't need
to teach the ostree C code itself to use `openat2`, we inherit
cap-std's setup.
All of the internal ostree code using the prior `openat()` should
continue to work.
I only did basic sanity checking of this; there may be bugs
in other APIs.
Colin Walters [Wed, 5 Jan 2022 23:14:42 +0000 (18:14 -0500)]
Release 0.13.4